class Person{//定义在主类外面的，如果定义在类主类里面，还是可以被访问，感觉就是private失效了
    public String name;
    public int age;
    private int sex;

    private String[]  names;

    public Person(){//创建一个不需要参数的构造方法
        this("张三",11);//使用this()的方式访问其他的构造方法
    }

    public Person(String name,int sex){
        //构造方法，通常用于初始化类数据，在创建对象的时候，传参必须和构造方法的参数一致，若有多个构造方法，可以有不同的初始化方式
        this.name = name;
        this.sex = sex;
    }

    public int getSex(){
        return sex;
    }
    public void setSex(int s){
        this.sex = s;
    }
    public void setNames(String... names){//可以接收一个数组类型的参数
        this.names = names;
    }
}
public class classBasic {
    public static void main(String[] args) {
        var p = new Person();//var会总自动补充Person类别
//        p.sex = 1;//现在就没办法访问private私有属性了
        p.setSex(10);
        System.out.println(p.getSex());
        p.setNames("张三","李四","王麻子");//使用这种方式传递，就不需要自己创建一个数组对象，再进行传参了
    }
}

class People extends  Person{//继承

}
